package aiguigu3.common_algorithm;

/**
 * ClassName: ArrayExer03
 * Package: aiguigu3.common_algorithm
 * Description:
 *案例:
 * 提示:	使用二维数组打印一个10行杨辉三角。
 * 1.第一行有1个元素,第n 行有n 个元素
 * 2.每一行的第一个元素和最后一个元素都是1
 * 3.从第三行开始,对于非第一个元素和最后一个元素的元素。即:
 * yanghui[i][j] = yanghui[i-1][j-1] + yanghui[i-1][j];
 *
 * @Author ZY
 * @Create 2024/9/12 18:44
 * @Version 1.0
 */
public class ArrayExer03 {
    public static void main(String[] args) {

        //1.创建一个二维数组
        int[][] yanghui = new int[10][];
        //2.使用循环结构，初始化外层数组元素
        for (int i = 0; i < yanghui.length; i++) {
            yanghui[i] = new int[i+1];
            //3.给数组的元素赋值
            //3.1给数组每行的首末元素赋值为1
            yanghui[i][0] = yanghui[i][i] = 1;
            //3.2给数组每行的非首末元素赋值
            for(int j = 1; j < yanghui[i].length - 1 ;j++){
                yanghui[i][j] = yanghui[i - 1][j] + yanghui[i - 1][j - 1];
            }
        }
        //遍历二维数组
        for (int i = 0; i < yanghui.length; i++) {
            for (int j = 0; j < yanghui[i].length; j++) {
                System.out.print(yanghui[i][j] + "\t");
            }
            System.out.println();
        }


    }

}
